#ifndef CLexer_h
#define CLexer_h
/*
 * D L G L e x e r  C l a s s  D e f i n i t i o n
 *
 * Generated from: parser.dlg
 *
 * 1989-1999 by  Will Cohen, Terence Parr, and Hank Dietz
 * Purdue University Electrical Engineering
 * DLG Version 1.33MR20
 */


#include "DLexerBase.h"

class CLexer : public DLGLexerBase {
public:
public:
	static const int MAX_MODE;
	static const int DfaStates;
	static const int START;
	static const int PREPROC;
	static const int RR;
	static const int COMMENT_LINE;
	static const int COMMENT_MULTI;
	static const int CONST_STRING;
	static const int CONST_CHAR;
	typedef unsigned short DfaState;

	CLexer(DLGInputStream *in,
		unsigned bufsize=2000)
		: DLGLexerBase(in, bufsize, 0)
	{
	;
	}
	void	  mode(int);
	ANTLRTokenType nextTokenType(void);
	void     advance(void);
protected:
	ANTLRTokenType act1();
	ANTLRTokenType act2();
	ANTLRTokenType act3();
	ANTLRTokenType act4();
	ANTLRTokenType act5();
	ANTLRTokenType act6();
	ANTLRTokenType act7();
	ANTLRTokenType act8();
	ANTLRTokenType act9();
	ANTLRTokenType act10();
	ANTLRTokenType act11();
	ANTLRTokenType act12();
	ANTLRTokenType act13();
	ANTLRTokenType act14();
	ANTLRTokenType act15();
	ANTLRTokenType act16();
	ANTLRTokenType act17();
	ANTLRTokenType act18();
	ANTLRTokenType act19();
	ANTLRTokenType act20();
	ANTLRTokenType act21();
	ANTLRTokenType act22();
	ANTLRTokenType act23();
	ANTLRTokenType act24();
	ANTLRTokenType act25();
	ANTLRTokenType act26();
	ANTLRTokenType act27();
	ANTLRTokenType act28();
	ANTLRTokenType act29();
	ANTLRTokenType act30();
	ANTLRTokenType act31();
	ANTLRTokenType act32();
	ANTLRTokenType act33();
	ANTLRTokenType act34();
	ANTLRTokenType act35();
	ANTLRTokenType act36();
	ANTLRTokenType act37();
	ANTLRTokenType act38();
	ANTLRTokenType act39();
	ANTLRTokenType act40();
	ANTLRTokenType act41();
	ANTLRTokenType act42();
	ANTLRTokenType act43();
	ANTLRTokenType act44();
	ANTLRTokenType act45();
	ANTLRTokenType act46();
	ANTLRTokenType act47();
	ANTLRTokenType act48();
	ANTLRTokenType act49();
	ANTLRTokenType act50();
	ANTLRTokenType act51();
	ANTLRTokenType act52();
	ANTLRTokenType act53();
	ANTLRTokenType act54();
	ANTLRTokenType act55();
	ANTLRTokenType act56();
	ANTLRTokenType act57();
	ANTLRTokenType act58();
	ANTLRTokenType act59();
	ANTLRTokenType act60();
	ANTLRTokenType act61();
	ANTLRTokenType act62();
	ANTLRTokenType act63();
	ANTLRTokenType act64();
	ANTLRTokenType act65();
	ANTLRTokenType act66();
	ANTLRTokenType act67();
	ANTLRTokenType act68();
	ANTLRTokenType act69();
	ANTLRTokenType act70();
	ANTLRTokenType act71();
	ANTLRTokenType act72();
	ANTLRTokenType act73();
	ANTLRTokenType act74();
	ANTLRTokenType act75();
	ANTLRTokenType act76();
	ANTLRTokenType act77();
	ANTLRTokenType act78();
	ANTLRTokenType act79();
	ANTLRTokenType act80();
	ANTLRTokenType act81();
	ANTLRTokenType act82();
	ANTLRTokenType act83();
	ANTLRTokenType act84();
	ANTLRTokenType act85();
	ANTLRTokenType act86();
	ANTLRTokenType act87();
	ANTLRTokenType act88();
	ANTLRTokenType act89();
	ANTLRTokenType act90();
	ANTLRTokenType act91();
	ANTLRTokenType act92();
	ANTLRTokenType act93();
	ANTLRTokenType act94();
	ANTLRTokenType act95();
	ANTLRTokenType act96();
	ANTLRTokenType act97();
	ANTLRTokenType act98();
	ANTLRTokenType act99();
	ANTLRTokenType act100();
	ANTLRTokenType act101();
	ANTLRTokenType act102();
	ANTLRTokenType act103();
	ANTLRTokenType act104();
	ANTLRTokenType act105();
	ANTLRTokenType act106();
	ANTLRTokenType act107();
	ANTLRTokenType act108();
	ANTLRTokenType act109();
	ANTLRTokenType act110();
	ANTLRTokenType act111();
	ANTLRTokenType act112();
	ANTLRTokenType act113();
	ANTLRTokenType act114();
	ANTLRTokenType act115();
	ANTLRTokenType act116();
	ANTLRTokenType act117();
	ANTLRTokenType act118();
	ANTLRTokenType act119();
	ANTLRTokenType act120();
	ANTLRTokenType act121();
	ANTLRTokenType act122();
	ANTLRTokenType act123();
	ANTLRTokenType act124();
	ANTLRTokenType act125();
	ANTLRTokenType act126();
	ANTLRTokenType act127();
	ANTLRTokenType act128();
	ANTLRTokenType act129();
	ANTLRTokenType act130();
	ANTLRTokenType act131();
	ANTLRTokenType act132();
	ANTLRTokenType act133();
	ANTLRTokenType act134();
	ANTLRTokenType act135();
	ANTLRTokenType act136();
	ANTLRTokenType act137();
	ANTLRTokenType act138();
	ANTLRTokenType act139();
	ANTLRTokenType act140();
	ANTLRTokenType act141();
	ANTLRTokenType act142();
	ANTLRTokenType act143();
	ANTLRTokenType act144();
	ANTLRTokenType act145();
	ANTLRTokenType act146();
	ANTLRTokenType act147();
	ANTLRTokenType act148();
	ANTLRTokenType act149();
	ANTLRTokenType act150();
	ANTLRTokenType act151();
	ANTLRTokenType act152();
	ANTLRTokenType act153();
	ANTLRTokenType act154();
	ANTLRTokenType act155();
	ANTLRTokenType act156();
	ANTLRTokenType act157();
	ANTLRTokenType act158();
	ANTLRTokenType act159();
	ANTLRTokenType act160();
	ANTLRTokenType act161();
	ANTLRTokenType act162();
	ANTLRTokenType act163();
	ANTLRTokenType act164();
	ANTLRTokenType act165();
	ANTLRTokenType act166();
	ANTLRTokenType act167();
	ANTLRTokenType act168();
	ANTLRTokenType act169();
	ANTLRTokenType act170();
	ANTLRTokenType act171();
	ANTLRTokenType act172();
	ANTLRTokenType act173();
	ANTLRTokenType act174();
	ANTLRTokenType act175();
	ANTLRTokenType act176();
	ANTLRTokenType act177();
	static DfaState st0[84];
	static DfaState st1[84];
	static DfaState st2[84];
	static DfaState st3[84];
	static DfaState st4[84];
	static DfaState st5[84];
	static DfaState st6[84];
	static DfaState st7[84];
	static DfaState st8[84];
	static DfaState st9[84];
	static DfaState st10[84];
	static DfaState st11[84];
	static DfaState st12[84];
	static DfaState st13[84];
	static DfaState st14[84];
	static DfaState st15[84];
	static DfaState st16[84];
	static DfaState st17[84];
	static DfaState st18[84];
	static DfaState st19[84];
	static DfaState st20[84];
	static DfaState st21[84];
	static DfaState st22[84];
	static DfaState st23[84];
	static DfaState st24[84];
	static DfaState st25[84];
	static DfaState st26[84];
	static DfaState st27[84];
	static DfaState st28[84];
	static DfaState st29[84];
	static DfaState st30[84];
	static DfaState st31[84];
	static DfaState st32[84];
	static DfaState st33[84];
	static DfaState st34[84];
	static DfaState st35[84];
	static DfaState st36[84];
	static DfaState st37[84];
	static DfaState st38[84];
	static DfaState st39[84];
	static DfaState st40[84];
	static DfaState st41[84];
	static DfaState st42[84];
	static DfaState st43[84];
	static DfaState st44[84];
	static DfaState st45[84];
	static DfaState st46[84];
	static DfaState st47[84];
	static DfaState st48[84];
	static DfaState st49[84];
	static DfaState st50[84];
	static DfaState st51[84];
	static DfaState st52[84];
	static DfaState st53[84];
	static DfaState st54[84];
	static DfaState st55[84];
	static DfaState st56[84];
	static DfaState st57[84];
	static DfaState st58[84];
	static DfaState st59[84];
	static DfaState st60[84];
	static DfaState st61[84];
	static DfaState st62[84];
	static DfaState st63[84];
	static DfaState st64[84];
	static DfaState st65[84];
	static DfaState st66[84];
	static DfaState st67[84];
	static DfaState st68[84];
	static DfaState st69[84];
	static DfaState st70[84];
	static DfaState st71[84];
	static DfaState st72[84];
	static DfaState st73[84];
	static DfaState st74[84];
	static DfaState st75[84];
	static DfaState st76[84];
	static DfaState st77[84];
	static DfaState st78[84];
	static DfaState st79[84];
	static DfaState st80[84];
	static DfaState st81[84];
	static DfaState st82[84];
	static DfaState st83[84];
	static DfaState st84[84];
	static DfaState st85[84];
	static DfaState st86[84];
	static DfaState st87[84];
	static DfaState st88[84];
	static DfaState st89[84];
	static DfaState st90[84];
	static DfaState st91[84];
	static DfaState st92[84];
	static DfaState st93[84];
	static DfaState st94[84];
	static DfaState st95[84];
	static DfaState st96[84];
	static DfaState st97[84];
	static DfaState st98[84];
	static DfaState st99[84];
	static DfaState st100[84];
	static DfaState st101[84];
	static DfaState st102[84];
	static DfaState st103[84];
	static DfaState st104[84];
	static DfaState st105[84];
	static DfaState st106[84];
	static DfaState st107[84];
	static DfaState st108[84];
	static DfaState st109[84];
	static DfaState st110[84];
	static DfaState st111[84];
	static DfaState st112[84];
	static DfaState st113[84];
	static DfaState st114[84];
	static DfaState st115[84];
	static DfaState st116[84];
	static DfaState st117[84];
	static DfaState st118[84];
	static DfaState st119[84];
	static DfaState st120[84];
	static DfaState st121[84];
	static DfaState st122[84];
	static DfaState st123[84];
	static DfaState st124[84];
	static DfaState st125[84];
	static DfaState st126[84];
	static DfaState st127[84];
	static DfaState st128[84];
	static DfaState st129[84];
	static DfaState st130[84];
	static DfaState st131[84];
	static DfaState st132[84];
	static DfaState st133[84];
	static DfaState st134[84];
	static DfaState st135[84];
	static DfaState st136[84];
	static DfaState st137[84];
	static DfaState st138[84];
	static DfaState st139[84];
	static DfaState st140[84];
	static DfaState st141[84];
	static DfaState st142[84];
	static DfaState st143[84];
	static DfaState st144[84];
	static DfaState st145[84];
	static DfaState st146[84];
	static DfaState st147[84];
	static DfaState st148[84];
	static DfaState st149[84];
	static DfaState st150[84];
	static DfaState st151[84];
	static DfaState st152[84];
	static DfaState st153[84];
	static DfaState st154[84];
	static DfaState st155[84];
	static DfaState st156[84];
	static DfaState st157[84];
	static DfaState st158[84];
	static DfaState st159[84];
	static DfaState st160[84];
	static DfaState st161[84];
	static DfaState st162[84];
	static DfaState st163[84];
	static DfaState st164[84];
	static DfaState st165[84];
	static DfaState st166[84];
	static DfaState st167[84];
	static DfaState st168[84];
	static DfaState st169[84];
	static DfaState st170[84];
	static DfaState st171[84];
	static DfaState st172[84];
	static DfaState st173[84];
	static DfaState st174[84];
	static DfaState st175[84];
	static DfaState st176[84];
	static DfaState st177[84];
	static DfaState st178[84];
	static DfaState st179[84];
	static DfaState st180[84];
	static DfaState st181[84];
	static DfaState st182[84];
	static DfaState st183[84];
	static DfaState st184[84];
	static DfaState st185[84];
	static DfaState st186[84];
	static DfaState st187[84];
	static DfaState st188[84];
	static DfaState st189[84];
	static DfaState st190[84];
	static DfaState st191[84];
	static DfaState st192[84];
	static DfaState st193[84];
	static DfaState st194[84];
	static DfaState st195[84];
	static DfaState st196[84];
	static DfaState st197[84];
	static DfaState st198[84];
	static DfaState st199[84];
	static DfaState st200[84];
	static DfaState st201[84];
	static DfaState st202[84];
	static DfaState st203[84];
	static DfaState st204[84];
	static DfaState st205[84];
	static DfaState st206[84];
	static DfaState st207[84];
	static DfaState st208[84];
	static DfaState st209[84];
	static DfaState st210[84];
	static DfaState st211[84];
	static DfaState st212[84];
	static DfaState st213[84];
	static DfaState st214[84];
	static DfaState st215[84];
	static DfaState st216[84];
	static DfaState st217[84];
	static DfaState st218[84];
	static DfaState st219[84];
	static DfaState st220[84];
	static DfaState st221[84];
	static DfaState st222[84];
	static DfaState st223[84];
	static DfaState st224[84];
	static DfaState st225[84];
	static DfaState st226[84];
	static DfaState st227[84];
	static DfaState st228[84];
	static DfaState st229[84];
	static DfaState st230[84];
	static DfaState st231[84];
	static DfaState st232[84];
	static DfaState st233[84];
	static DfaState st234[84];
	static DfaState st235[84];
	static DfaState st236[84];
	static DfaState st237[84];
	static DfaState st238[84];
	static DfaState st239[84];
	static DfaState st240[84];
	static DfaState st241[84];
	static DfaState st242[84];
	static DfaState st243[84];
	static DfaState st244[84];
	static DfaState st245[84];
	static DfaState st246[84];
	static DfaState st247[84];
	static DfaState st248[84];
	static DfaState st249[84];
	static DfaState st250[84];
	static DfaState st251[84];
	static DfaState st252[84];
	static DfaState st253[84];
	static DfaState st254[84];
	static DfaState st255[84];
	static DfaState st256[84];
	static DfaState st257[84];
	static DfaState st258[84];
	static DfaState st259[84];
	static DfaState st260[84];
	static DfaState st261[84];
	static DfaState st262[84];
	static DfaState st263[84];
	static DfaState st264[84];
	static DfaState st265[84];
	static DfaState st266[84];
	static DfaState st267[84];
	static DfaState st268[84];
	static DfaState st269[84];
	static DfaState st270[84];
	static DfaState st271[84];
	static DfaState st272[84];
	static DfaState st273[84];
	static DfaState st274[84];
	static DfaState st275[84];
	static DfaState st276[84];
	static DfaState st277[84];
	static DfaState st278[84];
	static DfaState st279[84];
	static DfaState st280[84];
	static DfaState st281[84];
	static DfaState st282[84];
	static DfaState st283[84];
	static DfaState st284[84];
	static DfaState st285[84];
	static DfaState st286[84];
	static DfaState st287[84];
	static DfaState st288[84];
	static DfaState st289[84];
	static DfaState st290[84];
	static DfaState st291[84];
	static DfaState st292[84];
	static DfaState st293[84];
	static DfaState st294[84];
	static DfaState st295[84];
	static DfaState st296[84];
	static DfaState st297[84];
	static DfaState st298[84];
	static DfaState st299[84];
	static DfaState st300[84];
	static DfaState st301[84];
	static DfaState st302[84];
	static DfaState st303[84];
	static DfaState st304[84];
	static DfaState st305[84];
	static DfaState st306[84];
	static DfaState st307[84];
	static DfaState st308[84];
	static DfaState st309[84];
	static DfaState st310[84];
	static DfaState st311[84];
	static DfaState st312[84];
	static DfaState st313[84];
	static DfaState st314[84];
	static DfaState st315[84];
	static DfaState st316[84];
	static DfaState st317[84];
	static DfaState st318[84];
	static DfaState st319[84];
	static DfaState st320[84];
	static DfaState st321[84];
	static DfaState st322[84];
	static DfaState st323[84];
	static DfaState st324[84];
	static DfaState st325[84];
	static DfaState st326[84];
	static DfaState st327[84];
	static DfaState st328[84];
	static DfaState st329[84];
	static DfaState st330[84];
	static DfaState st331[84];
	static DfaState st332[84];
	static DfaState st333[84];
	static DfaState st334[84];
	static DfaState st335[84];
	static DfaState st336[84];
	static DfaState st337[84];
	static DfaState st338[84];
	static DfaState st339[84];
	static DfaState st340[84];
	static DfaState st341[84];
	static DfaState st342[84];
	static DfaState st343[84];
	static DfaState st344[84];
	static DfaState st345[84];
	static DfaState st346[84];
	static DfaState st347[84];
	static DfaState st348[84];
	static DfaState st349[84];
	static DfaState st350[84];
	static DfaState st351[84];
	static DfaState st352[84];
	static DfaState st353[84];
	static DfaState st354[84];
	static DfaState st355[84];
	static DfaState st356[84];
	static DfaState st357[84];
	static DfaState st358[84];
	static DfaState st359[84];
	static DfaState st360[84];
	static DfaState st361[84];
	static DfaState st362[84];
	static DfaState st363[84];
	static DfaState st364[84];
	static DfaState st365[84];
	static DfaState st366[84];
	static DfaState st367[84];
	static DfaState st368[84];
	static DfaState st369[84];
	static DfaState st370[84];
	static DfaState st371[84];
	static DfaState st372[84];
	static DfaState st373[84];
	static DfaState st374[84];
	static DfaState st375[84];
	static DfaState st376[84];
	static DfaState st377[84];
	static DfaState st378[84];
	static DfaState st379[84];
	static DfaState st380[84];
	static DfaState st381[84];
	static DfaState st382[84];
	static DfaState st383[84];
	static DfaState st384[84];
	static DfaState st385[84];
	static DfaState st386[84];
	static DfaState st387[84];
	static DfaState st388[84];
	static DfaState st389[84];
	static DfaState st390[84];
	static DfaState st391[84];
	static DfaState st392[84];
	static DfaState st393[84];
	static DfaState st394[84];
	static DfaState st395[84];
	static DfaState st396[84];
	static DfaState st397[84];
	static DfaState st398[84];
	static DfaState st399[84];
	static DfaState st400[84];
	static DfaState st401[84];
	static DfaState st402[84];
	static DfaState st403[84];
	static DfaState st404[84];
	static DfaState st405[84];
	static DfaState st406[84];
	static DfaState st407[84];
	static DfaState st408[84];
	static DfaState st409[84];
	static DfaState st410[84];
	static DfaState st411[84];
	static DfaState st412[84];
	static DfaState st413[84];
	static DfaState st414[84];
	static DfaState st415[84];
	static DfaState st416[84];
	static DfaState st417[84];
	static DfaState st418[84];
	static DfaState st419[84];
	static DfaState st420[84];
	static DfaState st421[84];
	static DfaState st422[84];
	static DfaState st423[84];
	static DfaState st424[84];
	static DfaState st425[84];
	static DfaState st426[84];
	static DfaState st427[84];
	static DfaState st428[84];
	static DfaState st429[84];
	static DfaState st430[84];
	static DfaState st431[84];
	static DfaState st432[84];
	static DfaState st433[84];
	static DfaState st434[84];
	static DfaState st435[84];
	static DfaState st436[84];
	static DfaState st437[84];
	static DfaState st438[84];
	static DfaState st439[84];
	static DfaState st440[84];
	static DfaState st441[84];
	static DfaState st442[84];
	static DfaState st443[84];
	static DfaState st444[84];
	static DfaState st445[84];
	static DfaState st446[84];
	static DfaState st447[84];
	static DfaState st448[84];
	static DfaState st449[84];
	static DfaState st450[84];
	static DfaState st451[84];
	static DfaState st452[84];
	static DfaState st453[84];
	static DfaState st454[84];
	static DfaState st455[84];
	static DfaState st456[84];
	static DfaState st457[84];
	static DfaState st458[84];
	static DfaState st459[84];
	static DfaState st460[84];
	static DfaState st461[84];
	static DfaState st462[84];
	static DfaState st463[84];
	static DfaState st464[84];
	static DfaState st465[84];
	static DfaState st466[84];
	static DfaState st467[84];
	static DfaState st468[84];
	static DfaState st469[84];
	static DfaState st470[84];
	static DfaState st471[84];
	static DfaState st472[84];
	static DfaState st473[84];
	static DfaState st474[84];
	static DfaState st475[84];
	static DfaState st476[84];
	static DfaState st477[84];
	static DfaState st478[84];
	static DfaState st479[84];
	static DfaState st480[84];
	static DfaState st481[84];
	static DfaState st482[84];
	static DfaState st483[84];
	static DfaState st484[84];
	static DfaState st485[84];
	static DfaState st486[84];
	static DfaState st487[84];
	static DfaState st488[84];
	static DfaState st489[84];
	static DfaState st490[84];
	static DfaState st491[84];
	static DfaState st492[84];
	static DfaState st493[84];
	static DfaState st494[84];
	static DfaState st495[84];
	static DfaState st496[84];
	static DfaState st497[84];
	static DfaState st498[84];
	static DfaState st499[84];
	static DfaState st500[84];
	static DfaState st501[84];
	static DfaState st502[84];
	static DfaState st503[84];
	static DfaState st504[84];
	static DfaState st505[84];
	static DfaState st506[8];
	static DfaState st507[8];
	static DfaState st508[8];
	static DfaState st509[8];
	static DfaState st510[8];
	static DfaState st511[8];
	static DfaState st512[8];
	static DfaState st513[8];
	static DfaState st514[8];
	static DfaState st515[8];
	static DfaState st516[4];
	static DfaState st517[4];
	static DfaState st518[4];
	static DfaState st519[4];
	static DfaState st520[4];
	static DfaState st521[4];
	static DfaState st522[4];
	static DfaState st523[4];
	static DfaState st524[6];
	static DfaState st525[6];
	static DfaState st526[6];
	static DfaState st527[6];
	static DfaState st528[6];
	static DfaState st529[6];
	static DfaState st530[6];
	static DfaState st531[6];
	static DfaState st532[6];
	static DfaState st533[6];
	static DfaState st534[6];
	static DfaState st535[6];
	static DfaState st536[6];
	static DfaState st537[6];
	static DfaState st538[4];
	static DfaState st539[4];
	static DfaState st540[4];
	static DfaState st541[4];
	static DfaState *dfa[542];
	static DfaState dfa_base[];
	static unsigned char *b_class_no[];
	static DfaState accepts[543];
	static DLGChar alternatives[543];
	static ANTLRTokenType (CLexer::*actions[178])();
	static unsigned char shift0[257];
	static unsigned char shift1[257];
	static unsigned char shift2[257];
	static unsigned char shift3[257];
	static unsigned char shift4[257];
	static unsigned char shift5[257];
	static unsigned char shift6[257];
	int ZZSHIFT(int c) { return b_class_no[automaton][1+c]; }
//
// 133MR1 Deprecated feature to allow inclusion of user-defined code in DLG class header
//
#ifdef DLGLexerIncludeFile
#include DLGLexerIncludeFile
#endif
};
typedef ANTLRTokenType (CLexer::*PtrCLexerMemberFunc)();
#endif
